// // router.js
//
// import { createRouter, createWebHistory } from 'vue-router';
// import Login from './src/components/Login.vue';
// import Dashboard from './src/components/Dashboard.vue';
//
// const routes = [
//     {
//         path: '/',
//         redirect: '/login' // 默认重定向到登录页面
//     },
//     {
//         path: '/login',
//         component: Login
//     },
//     {
//         path: '/dashboard',
//         component: Dashboard,
//         meta: { requiresAuth: true } // 添加路由元信息，表示需要登录才能访问
//     }
// ];
//
// const router = createRouter({
//     history: createWebHistory(),
//     routes
// });
//
// export default router;


// router.js  不默认跳转到登录

// import VueRouter from 'vue-router'; // 引入 vue-router
// import Login from './src/components/Login.vue';
// import Dashboard from './src/components/Dashboard.vue';
//
// const routes = [
//     {
//         path: '/',
//         redirect: '/login' // 默认重定向到登录页面
//     },
//     {
//         path: '/login',
//         component: Login
//     },
//     {
//         path: '/dashboard',
//         component: Dashboard,
//         meta: { requiresAuth: true } // 添加路由元信息，表示需要登录才能访问
//     }
// ];
//
// const router = new VueRouter({
//     mode: 'hash', // 使用 hash 模式
//     routes
// });
//
// export default router;


// router.js  我直接访问http://localhost:8081/login会变成http://localhost:8081/login#/  这是由于你的路由模式设置为了 hash 模式，导致路径中出现了 # 符号。在 Vue Router 中，默认的路由模式是 hash 模式，这意味着路径中会自动添加 # 符号作为路由的分隔符。

// import VueRouter from 'vue-router';
// import Login from './src/components/Login.vue';
// import Dashboard from './src/components/Dashboard.vue';
//
// const routes = [
//     {
//         path: '/', // 根路径
//         redirect: '/login' // 重定向到登录页面
//     },
//     {
//         path: '/login',
//         component: Login
//     },
//     {
//         path: '/dashboard',
//         component: Dashboard,
//         meta: { requiresAuth: true } // 添加路由元信息，表示需要登录才能访问
//     }
// ];
//
// const router = new VueRouter({
//     mode: 'hash', // 使用 hash 模式
//     routes
// });
//
// // 添加路由导航守卫，确保未登录用户访问 dashboard 时会被重定向到登录页面
// router.beforeEach((to, from, next) => {
//     if (to.path === '/dashboard' && !isAuthenticated()) {
//         next('/login'); // 如果未登录且访问的是 dashboard 页面，则重定向到登录页面
//     } else {
//         next(); // 其他情况，放行
//     }
// });
//
// // 模拟用户是否已经认证（示例中使用 localStorage）
// function isAuthenticated() {
//     return localStorage.getItem('user'); // 假设用户登录后会在 localStorage 中保存用户信息
// }
//
// export default router;

// router.js

import VueRouter from 'vue-router';
import Login from './src/components/Login.vue';
import Dashboard from './src/components/Dashboard.vue';

const routes = [
    {
        path: '/', // 根路径
        redirect: '/login' // 重定向到登录页面
    },
    {
        path: '/login',
        component: Login
    },
    {
        path: '/dashboard',
        component: Dashboard,
        meta: { requiresAuth: true } // 添加路由元信息，表示需要登录才能访问
    }
];

const router = new VueRouter({
    mode: 'history', // 使用 history 模式
    routes
});

export default router;
